ホームに戻る
出典 :
Worksheet.Protect メソッド (Excel) | Microsoft Learn
目次 :

シート保護とVBA

Excelの機能でワークシートを保護している場合、セルのロックの有無によらずマクロからセルを編集することはできない。
このため、保護されたシートをマクロで編集する場合は保護の解除が必要となる。

Worksheet.Protect メソッドによるマクロの解禁

Worksheet.Protect はシートの保護を有効にするメソッドだが、パラメータ UserInterfaceOnly に True を設定すると
マクロによる変更のみ許可される。(画面上からの変更は禁止。)
既にシートの保護が行われている場合でも有効。
ThisWorkbook
Private Sub Workbook_Open() ' シート2のマクロ実行を解禁 Sheet2.Protect UserInterfaceOnly:=True End Sub
その他のパラメータに関しては出典元を参照のこと。

シート保護の解除

Worksheet.Unprotect メソッドでシートの保護を解除できる。
これは画面上からの変更、マクロによる変更双方が対象となる。